﻿using System;
using System.Collections.Generic;
using System.Text;

namespace EC.Application.Interface
{
    using EC.Entity;
    using EC.Entity.Query;
    using EC.Entity.Request.DepositOrder;
    using EC.Entity.Response.DepositOrder;

    /// <summary>
    /// 存款订单记录接口
    /// </summary>
    public interface DepositOrderService
    {
        /// <summary>
        /// 获取
        /// </summary>
        /// <returns></returns>
        DepositOrderResponse Get(int id);

        /// <summary>
        /// 成功
        /// </summary>
        /// <returns></returns>
        JResult Success(int id,int userId);

        /// <summary>
        /// 重置
        /// </summary>
        /// <returns></returns>
        JResult Reset(int id);

        /// <summary>
        /// 撤销
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        JResult Revoke(RevokeRequest request);

        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        DataGrid<DepositOrderQueryResponse> Pager(DepositOrderQuery query);

        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        DataGrid<DepositOrderQueryResponse> SyPager(DepositOrderQuery query);

        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        DataGrid<DepositOrderQueryResponse> ExportPager(DepositOrderQuery query);

        /// <summary>
        /// 查询
        /// </summary>
        /// <param name="query"></param>
        /// <returns></returns>
        DataGrid<DepositOrderStatisticsQueryResponse> StatisticsPager(DepositOrderQuery query);
    }
}
